import java.awt.image.SampleModel;
import java.util.concurrent.Semaphore;

public class ThreadSemaphore {
    public static void main(String[] args) throws InterruptedException {
        // 信号量的简单使用
        Semaphore semaphore = new Semaphore(3);
        semaphore.acquire(); // 在申请资源中 可以写一个参数  可以在里面指定申请多少个
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");
        // 到这里运行结果就会发现只输出了三次 , 因为只有 3个信号量

        semaphore.release(); //释放资源

    }
}
